//
// Source code recreated from a .class file by IntelliJ IDEA
// (powered by FernFlower decompiler)
//

package org.jim.core.packets;

import com.alibaba.fastjson.JSONObject;

public class ChatBody extends Message {
	private static final long serialVersionUID = 5731474214655476286L;
	private String fromId;
	private String fromName;
	private String fromAvatar;
	private String toId;
	private String toName;
	private String toAvatar;
	private String params;
	private Integer msgType;
	private Integer chatType;
	private String content;
	private String groupId;
	private String groupName;
	private String groupCode;

	public ChatBody() {
	}

	private ChatBody(String appId, String id, Integer networkType, double longitude, double latitude, Double elevation, Double speed, Integer direction, Double accuracy, String locationType, String address, Integer cmd, Long createTime, JSONObject extras) {
	}

	private ChatBody(String appId, String scope, String id, String fromId, String toId, Integer msgType, Integer chatType, String content, String groupId, Integer cmd, Long createTime, JSONObject extras) {
		this.appId = appId;
		this.scope = scope;
		this.id = id;
		this.fromId = fromId;
		this.toId = toId;
		this.msgType = msgType;
		this.chatType = chatType;
		this.content = content;
		this.groupId = groupId;
		this.cmd = cmd;
		this.createTime = createTime;
		this.extras = extras;
	}

	private ChatBody(String appId, String scope, String id, String fromId, String fromName, String toId, String toName, Integer msgType, Integer chatType, String content, String groupId, String groupName, String groupCode, Integer cmd, Long createTime, JSONObject extras) {
		this.appId = appId;
		this.scope = scope;
		this.id = id;
		this.fromId = fromId;
		this.fromName = fromName;
		this.toId = toId;
		this.toName = toName;
		this.msgType = msgType;
		this.chatType = chatType;
		this.content = content;
		this.groupId = groupId;
		this.cmd = cmd;
		this.createTime = createTime;
		this.extras = extras;
		this.groupName = groupName;
		this.groupCode = groupCode;
	}

	public String getParams() {
		return this.params;
	}

	public void setParams(String params) {
		this.params = params;
	}

	public String getToAvatar() {
		return this.toAvatar;
	}

	public void setToAvatar(String toAvatar) {
		this.toAvatar = toAvatar;
	}

	public String getFromAvatar() {
		return this.fromAvatar;
	}

	public void setFromAvatar(String fromAvatar) {
		this.fromAvatar = fromAvatar;
	}

	public static Builder newBuilder() {
		return new Builder();
	}

	public String getFromId() {
		return this.fromId;
	}

	public void setFromId(String fromId) {
		this.fromId = fromId;
	}

	public String getFromName() {
		return this.fromName;
	}

	public void setFromName(String fromName) {
		this.fromName = fromName;
	}

	public String getToId() {
		return this.toId;
	}

	public void setToId(String toId) {
		this.toId = toId;
	}

	public String getToName() {
		return this.toName;
	}

	public void setToName(String toName) {
		this.toName = toName;
	}

	public Integer getMsgType() {
		return this.msgType;
	}

	public ChatBody setMsgType(Integer msgType) {
		this.msgType = msgType;
		return this;
	}

	public String getContent() {
		return this.content;
	}

	public ChatBody setContent(String content) {
		this.content = content;
		return this;
	}

	public String getGroupId() {
		return this.groupId;
	}

	public void setGroupId(String groupId) {
		this.groupId = groupId;
	}

	public String getGroupName() {
		return this.groupName;
	}

	public void setGroupName(String groupName) {
		this.groupName = groupName;
	}

	public String getGroupCode() {
		return this.groupCode;
	}

	public void setGroupCode(String groupCode) {
		this.groupCode = groupCode;
	}

	public Integer getChatType() {
		return this.chatType;
	}

	public ChatBody setChatType(Integer chatType) {
		this.chatType = chatType;
		return this;
	}

	public static class Builder extends Message.Builder<ChatBody, Builder> {
		private String fromId;
		private String fromName;
		private String toId;
		private String toName;
		private Integer msgType;
		private Integer chatType;
		private String content;
		private String groupId;
		private String groupName;
		private String groupCode;

		public Builder() {
		}

		public Builder fromId(String fromId) {
			this.fromId = fromId;
			return this;
		}

		public Builder fromName(String fromName) {
			this.fromName = fromName;
			return this;
		}

		public Builder toId(String toId) {
			this.toId = toId;
			return this;
		}

		public Builder toName(String toName) {
			this.toName = toName;
			return this;
		}

		public Builder msgType(Integer msgType) {
			this.msgType = msgType;
			return this;
		}

		public Builder chatType(Integer chatType) {
			this.chatType = chatType;
			return this;
		}

		public Builder content(String content) {
			this.content = content;
			return this;
		}

		public Builder groupId(String groupId) {
			this.groupId = groupId;
			return this;
		}

		public Builder groupName(String groupName) {
			this.groupName = groupName;
			return this;
		}

		public Builder groupCode(String groupCode) {
			this.groupCode = groupCode;
			return this;
		}

		protected Builder getThis() {
			return this;
		}

		public ChatBody build() {
			return new ChatBody(this.appId, this.scope, this.id, this.fromId, this.fromName, this.toId, this.toName, this.msgType, this.chatType, this.content, this.groupId, this.groupName, this.groupCode, this.cmd, this.createTime, this.extras);
		}
	}
}
